<?php

defined('BASEPATH') or die('forbidden');

class skill_Controller Extends Controller {

    private $rolename;
    private $m;	//数据库连接
    private $server_info;
	
    function _init() {
        check_level(50, segment(0), segment(1));
    	set_time_limit(0);
		$this->inc = $this->config['inc'];
        $this->skilllist = get_type_skill();
        $this->isskill = array('-1'=>'没有解锁', '0'=>'技能', '1'=>'消耗品'); //-1：没有解锁，0：技能，1：消耗品
        
        //得到选择的区号
        $areanum = $_SESSION['area_selected_id'];
        if ($areanum == '') 
        {
            echo "<script>alert('" . translate('C_SELECT_AREA_TEXT') . "');</script>";
            return;
        }

        //query server mapping
        $selectSql = "SELECT * FROM server_mapping WHERE dbtype='1' AND areanum={$areanum} ";
        $this->db->query($selectSql);
        $this->server_info=$this->db->get_array('default');

        var_dump($this->server_info);
        // db数据库
        $this->m = new MongoClient("mongodb://{$this->server_info['username']}:{$this->server_info['userpwd']}@{$this->server_info['dbip']}");
		
		if (false == $this->dbConnt) {
			//内部有提示错误，在此就不提示了
			 //echo "<script>alert(' connect areanum:$areanum error ');</script>";
            return;
		}
		$this->dbConnt->query("SELECT id, name FROM player");
		while ($n = $this->dbConnt->get_array('default'))
		{
			$this->nameList[$n['id']] = $n['name'];
		}
    }

    function index() {
        $this->view->display("dbplayer/skill/index");
    }

    function flexigrid() {
        list($colkey, $colsinfo, $where, $sortname, $sortorder, $offset, $rp, $page) = $this->common->get_flexigrid_params();

        $query=$_POST['query'];
        $query_type=$_POST['qtype'];
        if($query_type=='_id'){
            $filter=array($query_type=>(int)$query);
        }else{
            $filter=array($query_type=>$query);
        }
        $collection=$this->m->{$this->server_info['dbname']}->PlayerCopy;
        if($query!=''){
            $document=$collection->find($filter);
        }else{
            $document=$collection->find();
        }
        $data=array();
        $total = count($document);
        foreach ($document as $key=>$value){
            //$value['logofftime'] = get_datetime($value['logofftime']);
            //$value['loginday'] = get_datetime($value['loginday']);
            foreach ($value['main']['chapter'] as $k=>$v){
                foreach ($v['copylst'] as $a=>$b){
                    $v['_id']=$value['_id'].'main';
                    $num='main'.$key.$k.$a;
                    $data[$num]=array('id' => $value['_id'], 'cell' => $v);
                }

            }
            foreach ($value['elite'] as $k=>$v){
                $v['_id']=$value['_id'].'elite';
                $num='elite'.$key.$k;
                $data[$num]=array('id' => $value['_id'], 'cell' => $v);
            }
            foreach ($value['famous'] as $k=>$v){
                $v['_id']=$value['_id'];
                $num='famous'.$key.$k;
                $data[$num]=array('id' => $value['_id'], 'cell' => $v);
            }
            foreach ($value['daily'] as $k=>$v){
                $v['_id']=$value['_id'];
                $num='daily'.$key.$k;
                $data[$num]=array('id' => $value['_id'], 'cell' => $v);
            }
        }

//        $sql = "SELECT COUNT(*) AS num FROM player_skillhotkey  WHERE {$where} {$exwhere}";
//		//echo " sql2:$sql ";
//		$one = $this->dbConnt->one($sql);
//		$total = $one['num'];
//
//		$orderby = $sortname ? "ORDER BY {$sortname} {$sortorder} " : "";
//
//		$sql = "SELECT {$colsinfo} FROM player_skillhotkey WHERE {$where} {$exwhere} {$orderby} LIMIT {$offset},{$rp}";
//
//		$this->dbConnt->query($sql);
//		//$id = 0;
//		while ($n = $this->dbConnt->get_array('default'))
//		{
//			$n['skillid']=$this->skilllist[$n['skillid']]."-".$n['skillid'];
//			$n['isskill']=$this->isskill[$n['isskill']]."-".$n['isskill'];
//			//$n['lastfire']=get_datetime($n['lastfire']);
//			$n['roleid']=$this->nameList[$n['roleid']]."(".$n['roleid'].")";
//			$rows[] = array('id' => $n['id'], 'cell' => $n);
//			//$id = $id+1;
//		}
		//var_dump($rows);

		$result = array(
	            'page' => $page,
	            'total' => $total,
	            'rows' => $rows
		);
		//$this->dbConnt->free_all();
		echo json_encode($result);
    }

}

?>
